package Wires.diagram.providers;

import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.gmf.runtime.common.core.service.AbstractProvider;
import org.eclipse.gmf.runtime.common.core.service.IOperation;
import org.eclipse.gmf.runtime.common.ui.services.parser.GetParserOperation;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParser;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParserProvider;
import org.eclipse.gmf.runtime.emf.type.core.IElementType;
import org.eclipse.gmf.runtime.emf.ui.services.parser.ParserHintAdapter;
import org.eclipse.gmf.runtime.notation.View;

/**
 * @generated
 */
public class WiresParserProvider extends AbstractProvider implements
		IParserProvider {

	/**
	 * @generated
	 */
	private IParser atomicModelTransformationName_4003Parser;

	/**
	 * @generated
	 */
	private IParser getAtomicModelTransformationName_4003Parser() {
		if (atomicModelTransformationName_4003Parser == null) {
			atomicModelTransformationName_4003Parser = createAtomicModelTransformationName_4003Parser();
		}
		return atomicModelTransformationName_4003Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createAtomicModelTransformationName_4003Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser identityTransformationName_4006Parser;

	/**
	 * @generated
	 */
	private IParser getIdentityTransformationName_4006Parser() {
		if (identityTransformationName_4006Parser == null) {
			identityTransformationName_4006Parser = createIdentityTransformationName_4006Parser();
		}
		return identityTransformationName_4006Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createIdentityTransformationName_4006Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser genericTransformationName_4007Parser;

	/**
	 * @generated
	 */
	private IParser getGenericTransformationName_4007Parser() {
		if (genericTransformationName_4007Parser == null) {
			genericTransformationName_4007Parser = createGenericTransformationName_4007Parser();
		}
		return genericTransformationName_4007Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createGenericTransformationName_4007Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser compositeTransformationName_4010Parser;

	/**
	 * @generated
	 */
	private IParser getCompositeTransformationName_4010Parser() {
		if (compositeTransformationName_4010Parser == null) {
			compositeTransformationName_4010Parser = createCompositeTransformationName_4010Parser();
		}
		return compositeTransformationName_4010Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createCompositeTransformationName_4010Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser model2TextTransformationName_4013Parser;

	/**
	 * @generated
	 */
	private IParser getModel2TextTransformationName_4013Parser() {
		if (model2TextTransformationName_4013Parser == null) {
			model2TextTransformationName_4013Parser = createModel2TextTransformationName_4013Parser();
		}
		return model2TextTransformationName_4013Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createModel2TextTransformationName_4013Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser queryName_4016Parser;

	/**
	 * @generated
	 */
	private IParser getQueryName_4016Parser() {
		if (queryName_4016Parser == null) {
			queryName_4016Parser = createQueryName_4016Parser();
		}
		return queryName_4016Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createQueryName_4016Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser basicDataName_4019Parser;

	/**
	 * @generated
	 */
	private IParser getBasicDataName_4019Parser() {
		if (basicDataName_4019Parser == null) {
			basicDataName_4019Parser = createBasicDataName_4019Parser();
		}
		return basicDataName_4019Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createBasicDataName_4019Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser modelName_4022Parser;

	/**
	 * @generated
	 */
	private IParser getModelName_4022Parser() {
		if (modelName_4022Parser == null) {
			modelName_4022Parser = createModelName_4022Parser();
		}
		return modelName_4022Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createModelName_4022Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser modelTypeName_4025Parser;

	/**
	 * @generated
	 */
	private IParser getModelTypeName_4025Parser() {
		if (modelTypeName_4025Parser == null) {
			modelTypeName_4025Parser = createModelTypeName_4025Parser();
		}
		return modelTypeName_4025Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createModelTypeName_4025Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser decisionNodeExpression_4027Parser;

	/**
	 * @generated
	 */
	private IParser getDecisionNodeExpression_4027Parser() {
		if (decisionNodeExpression_4027Parser == null) {
			decisionNodeExpression_4027Parser = createDecisionNodeExpression_4027Parser();
		}
		return decisionNodeExpression_4027Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createDecisionNodeExpression_4027Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getDecisionNode_Expression(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		parser.setViewPattern("<{0}>");
		parser.setEditorPattern("<{0}>");
		parser.setEditPattern("<{0}>");
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser libraryName_4029Parser;

	/**
	 * @generated
	 */
	private IParser getLibraryName_4029Parser() {
		if (libraryName_4029Parser == null) {
			libraryName_4029Parser = createLibraryName_4029Parser();
		}
		return libraryName_4029Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createLibraryName_4029Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getLibrary_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser atomicModelTransfomationTypeName_4033Parser;

	/**
	 * @generated
	 */
	private IParser getAtomicModelTransfomationTypeName_4033Parser() {
		if (atomicModelTransfomationTypeName_4033Parser == null) {
			atomicModelTransfomationTypeName_4033Parser = createAtomicModelTransfomationTypeName_4033Parser();
		}
		return atomicModelTransfomationTypeName_4033Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createAtomicModelTransfomationTypeName_4033Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser model2TextTransformationTypeName_4034Parser;

	/**
	 * @generated
	 */
	private IParser getModel2TextTransformationTypeName_4034Parser() {
		if (model2TextTransformationTypeName_4034Parser == null) {
			model2TextTransformationTypeName_4034Parser = createModel2TextTransformationTypeName_4034Parser();
		}
		return model2TextTransformationTypeName_4034Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createModel2TextTransformationTypeName_4034Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser queryTypeName_4035Parser;

	/**
	 * @generated
	 */
	private IParser getQueryTypeName_4035Parser() {
		if (queryTypeName_4035Parser == null) {
			queryTypeName_4035Parser = createQueryTypeName_4035Parser();
		}
		return queryTypeName_4035Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createQueryTypeName_4035Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser compositeTransformationTypeName_4059Parser;

	/**
	 * @generated
	 */
	private IParser getCompositeTransformationTypeName_4059Parser() {
		if (compositeTransformationTypeName_4059Parser == null) {
			compositeTransformationTypeName_4059Parser = createCompositeTransformationTypeName_4059Parser();
		}
		return compositeTransformationTypeName_4059Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createCompositeTransformationTypeName_4059Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser inputActualParameterName_4001Parser;

	/**
	 * @generated
	 */
	private IParser getInputActualParameterName_4001Parser() {
		if (inputActualParameterName_4001Parser == null) {
			inputActualParameterName_4001Parser = createInputActualParameterName_4001Parser();
		}
		return inputActualParameterName_4001Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createInputActualParameterName_4001Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser outputActualParameterName_4002Parser;

	/**
	 * @generated
	 */
	private IParser getOutputActualParameterName_4002Parser() {
		if (outputActualParameterName_4002Parser == null) {
			outputActualParameterName_4002Parser = createOutputActualParameterName_4002Parser();
		}
		return outputActualParameterName_4002Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createOutputActualParameterName_4002Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser inputActualParameterName_4026Parser;

	/**
	 * @generated
	 */
	private IParser getInputActualParameterName_4026Parser() {
		if (inputActualParameterName_4026Parser == null) {
			inputActualParameterName_4026Parser = createInputActualParameterName_4026Parser();
		}
		return inputActualParameterName_4026Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createInputActualParameterName_4026Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser libraryRefName_4028Parser;

	/**
	 * @generated
	 */
	private IParser getLibraryRefName_4028Parser() {
		if (libraryRefName_4028Parser == null) {
			libraryRefName_4028Parser = createLibraryRefName_4028Parser();
		}
		return libraryRefName_4028Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createLibraryRefName_4028Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getLibraryRef_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser inputFormalParameterNameTypeName_4030Parser;

	/**
	 * @generated
	 */
	private IParser getInputFormalParameterNameTypeName_4030Parser() {
		if (inputFormalParameterNameTypeName_4030Parser == null) {
			inputFormalParameterNameTypeName_4030Parser = createInputFormalParameterNameTypeName_4030Parser();
		}
		return inputFormalParameterNameTypeName_4030Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createInputFormalParameterNameTypeName_4030Parser() {
		EAttribute[] features = new EAttribute[] {
				Wires.WiresPackage.eINSTANCE.getConnectableElement_Name(),
				Wires.WiresPackage.eINSTANCE.getFormalParameter_TypeName(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		parser.setViewPattern("{0}:{1}");
		parser.setEditorPattern("{0}:{1}");
		parser.setEditPattern("{0}:{1}");
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser outputFormalParameterNameTypeName_4031Parser;

	/**
	 * @generated
	 */
	private IParser getOutputFormalParameterNameTypeName_4031Parser() {
		if (outputFormalParameterNameTypeName_4031Parser == null) {
			outputFormalParameterNameTypeName_4031Parser = createOutputFormalParameterNameTypeName_4031Parser();
		}
		return outputFormalParameterNameTypeName_4031Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createOutputFormalParameterNameTypeName_4031Parser() {
		EAttribute[] features = new EAttribute[] {
				Wires.WiresPackage.eINSTANCE.getConnectableElement_Name(),
				Wires.WiresPackage.eINSTANCE.getFormalParameter_TypeName(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		parser.setViewPattern("{0}:{1}");
		parser.setEditorPattern("{0}:{1}");
		parser.setEditPattern("{0}:{1}");
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser libraryRefName_4032Parser;

	/**
	 * @generated
	 */
	private IParser getLibraryRefName_4032Parser() {
		if (libraryRefName_4032Parser == null) {
			libraryRefName_4032Parser = createLibraryRefName_4032Parser();
		}
		return libraryRefName_4032Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createLibraryRefName_4032Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getLibraryRef_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser modelName_4036Parser;

	/**
	 * @generated
	 */
	private IParser getModelName_4036Parser() {
		if (modelName_4036Parser == null) {
			modelName_4036Parser = createModelName_4036Parser();
		}
		return modelName_4036Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createModelName_4036Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser basicDataName_4039Parser;

	/**
	 * @generated
	 */
	private IParser getBasicDataName_4039Parser() {
		if (basicDataName_4039Parser == null) {
			basicDataName_4039Parser = createBasicDataName_4039Parser();
		}
		return basicDataName_4039Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createBasicDataName_4039Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser compositeTransformationName_4042Parser;

	/**
	 * @generated
	 */
	private IParser getCompositeTransformationName_4042Parser() {
		if (compositeTransformationName_4042Parser == null) {
			compositeTransformationName_4042Parser = createCompositeTransformationName_4042Parser();
		}
		return compositeTransformationName_4042Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createCompositeTransformationName_4042Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser atomicModelTransformationName_4045Parser;

	/**
	 * @generated
	 */
	private IParser getAtomicModelTransformationName_4045Parser() {
		if (atomicModelTransformationName_4045Parser == null) {
			atomicModelTransformationName_4045Parser = createAtomicModelTransformationName_4045Parser();
		}
		return atomicModelTransformationName_4045Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createAtomicModelTransformationName_4045Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser genericTransformationName_4048Parser;

	/**
	 * @generated
	 */
	private IParser getGenericTransformationName_4048Parser() {
		if (genericTransformationName_4048Parser == null) {
			genericTransformationName_4048Parser = createGenericTransformationName_4048Parser();
		}
		return genericTransformationName_4048Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createGenericTransformationName_4048Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser identityTransformationName_4051Parser;

	/**
	 * @generated
	 */
	private IParser getIdentityTransformationName_4051Parser() {
		if (identityTransformationName_4051Parser == null) {
			identityTransformationName_4051Parser = createIdentityTransformationName_4051Parser();
		}
		return identityTransformationName_4051Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createIdentityTransformationName_4051Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser queryName_4052Parser;

	/**
	 * @generated
	 */
	private IParser getQueryName_4052Parser() {
		if (queryName_4052Parser == null) {
			queryName_4052Parser = createQueryName_4052Parser();
		}
		return queryName_4052Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createQueryName_4052Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser decisionNodeExpression_4055Parser;

	/**
	 * @generated
	 */
	private IParser getDecisionNodeExpression_4055Parser() {
		if (decisionNodeExpression_4055Parser == null) {
			decisionNodeExpression_4055Parser = createDecisionNodeExpression_4055Parser();
		}
		return decisionNodeExpression_4055Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createDecisionNodeExpression_4055Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getDecisionNode_Expression(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		parser.setViewPattern("<{0}>");
		parser.setEditorPattern("<{0}>");
		parser.setEditPattern("<{0}>");
		return parser;
	}

	/**
	 * @generated
	 */
	private IParser model2TextTransformationName_4056Parser;

	/**
	 * @generated
	 */
	private IParser getModel2TextTransformationName_4056Parser() {
		if (model2TextTransformationName_4056Parser == null) {
			model2TextTransformationName_4056Parser = createModel2TextTransformationName_4056Parser();
		}
		return model2TextTransformationName_4056Parser;
	}

	/**
	 * @generated
	 */
	protected IParser createModel2TextTransformationName_4056Parser() {
		EAttribute[] features = new EAttribute[] { Wires.WiresPackage.eINSTANCE
				.getConnectableElement_Name(), };
		Wires.diagram.parsers.MessageFormatParser parser = new Wires.diagram.parsers.MessageFormatParser(
				features);
		return parser;
	}

	/**
	 * @generated
	 */
	protected IParser getParser(int visualID) {
		switch (visualID) {
		case Wires.diagram.edit.parts.AtomicModelTransformationNameEditPart.VISUAL_ID:
			return getAtomicModelTransformationName_4003Parser();
		case Wires.diagram.edit.parts.IdentityTransformationNameEditPart.VISUAL_ID:
			return getIdentityTransformationName_4006Parser();
		case Wires.diagram.edit.parts.GenericTransformationNameEditPart.VISUAL_ID:
			return getGenericTransformationName_4007Parser();
		case Wires.diagram.edit.parts.CompositeTransformationNameEditPart.VISUAL_ID:
			return getCompositeTransformationName_4010Parser();
		case Wires.diagram.edit.parts.Model2TextTransformationNameEditPart.VISUAL_ID:
			return getModel2TextTransformationName_4013Parser();
		case Wires.diagram.edit.parts.QueryNameEditPart.VISUAL_ID:
			return getQueryName_4016Parser();
		case Wires.diagram.edit.parts.BasicDataNameEditPart.VISUAL_ID:
			return getBasicDataName_4019Parser();
		case Wires.diagram.edit.parts.ModelNameEditPart.VISUAL_ID:
			return getModelName_4022Parser();
		case Wires.diagram.edit.parts.ModelTypeNameEditPart.VISUAL_ID:
			return getModelTypeName_4025Parser();
		case Wires.diagram.edit.parts.DecisionNodeExpressionEditPart.VISUAL_ID:
			return getDecisionNodeExpression_4027Parser();
		case Wires.diagram.edit.parts.LibraryNameEditPart.VISUAL_ID:
			return getLibraryName_4029Parser();
		case Wires.diagram.edit.parts.AtomicModelTransfomationTypeNameEditPart.VISUAL_ID:
			return getAtomicModelTransfomationTypeName_4033Parser();
		case Wires.diagram.edit.parts.Model2TextTransformationTypeNameEditPart.VISUAL_ID:
			return getModel2TextTransformationTypeName_4034Parser();
		case Wires.diagram.edit.parts.QueryTypeNameEditPart.VISUAL_ID:
			return getQueryTypeName_4035Parser();
		case Wires.diagram.edit.parts.CompositeTransformationTypeNameEditPart.VISUAL_ID:
			return getCompositeTransformationTypeName_4059Parser();
		case Wires.diagram.edit.parts.InputActualParameterNameEditPart.VISUAL_ID:
			return getInputActualParameterName_4001Parser();
		case Wires.diagram.edit.parts.OutputActualParameterNameEditPart.VISUAL_ID:
			return getOutputActualParameterName_4002Parser();
		case Wires.diagram.edit.parts.InputActualParameterName2EditPart.VISUAL_ID:
			return getInputActualParameterName_4026Parser();
		case Wires.diagram.edit.parts.LibraryRefNameEditPart.VISUAL_ID:
			return getLibraryRefName_4028Parser();
		case Wires.diagram.edit.parts.InputFormalParameterNameTypeNameEditPart.VISUAL_ID:
			return getInputFormalParameterNameTypeName_4030Parser();
		case Wires.diagram.edit.parts.OutputFormalParameterNameTypeNameEditPart.VISUAL_ID:
			return getOutputFormalParameterNameTypeName_4031Parser();
		case Wires.diagram.edit.parts.LibraryRefName2EditPart.VISUAL_ID:
			return getLibraryRefName_4032Parser();
		case Wires.diagram.edit.parts.ModelName2EditPart.VISUAL_ID:
			return getModelName_4036Parser();
		case Wires.diagram.edit.parts.BasicDataName2EditPart.VISUAL_ID:
			return getBasicDataName_4039Parser();
		case Wires.diagram.edit.parts.CompositeTransformationName2EditPart.VISUAL_ID:
			return getCompositeTransformationName_4042Parser();
		case Wires.diagram.edit.parts.AtomicModelTransformationName2EditPart.VISUAL_ID:
			return getAtomicModelTransformationName_4045Parser();
		case Wires.diagram.edit.parts.GenericTransformationName2EditPart.VISUAL_ID:
			return getGenericTransformationName_4048Parser();
		case Wires.diagram.edit.parts.IdentityTransformationName2EditPart.VISUAL_ID:
			return getIdentityTransformationName_4051Parser();
		case Wires.diagram.edit.parts.QueryName2EditPart.VISUAL_ID:
			return getQueryName_4052Parser();
		case Wires.diagram.edit.parts.DecisionNodeExpression2EditPart.VISUAL_ID:
			return getDecisionNodeExpression_4055Parser();
		case Wires.diagram.edit.parts.Model2TextTransformationName2EditPart.VISUAL_ID:
			return getModel2TextTransformationName_4056Parser();
		}
		return null;
	}

	/**
	 * @generated
	 */
	public IParser getParser(IAdaptable hint) {
		String vid = (String) hint.getAdapter(String.class);
		if (vid != null) {
			return getParser(Wires.diagram.part.WiresVisualIDRegistry
					.getVisualID(vid));
		}
		View view = (View) hint.getAdapter(View.class);
		if (view != null) {
			return getParser(Wires.diagram.part.WiresVisualIDRegistry
					.getVisualID(view));
		}
		return null;
	}

	/**
	 * @generated
	 */
	public boolean provides(IOperation operation) {
		if (operation instanceof GetParserOperation) {
			IAdaptable hint = ((GetParserOperation) operation).getHint();
			if (Wires.diagram.providers.WiresElementTypes.getElement(hint) == null) {
				return false;
			}
			return getParser(hint) != null;
		}
		return false;
	}

	/**
	 * @generated
	 */
	public static class HintAdapter extends ParserHintAdapter {

		/**
		 * @generated
		 */
		private final IElementType elementType;

		/**
		 * @generated
		 */
		public HintAdapter(IElementType type, EObject object, String parserHint) {
			super(object, parserHint);
			assert type != null;
			elementType = type;
		}

		/**
		 * @generated
		 */
		public Object getAdapter(Class adapter) {
			if (IElementType.class.equals(adapter)) {
				return elementType;
			}
			return super.getAdapter(adapter);
		}
	}

}
